export default {
	//获取cid
	getCid(self){
		self.globalUtil.getCid(function(cid) {
			 console.log("===cid===",cid);
			 if(null!=cid){
				  self.$u.vuex('vuex_deviceMode',cid);
			 }
			 // 定时检查CID是否改变
			let timmer= setInterval(function() {
			    self.globalUtil.getCid(function(cid) {
					console.log("===定时检查CID是否改变===",cid);
					if(null!=cid){
						self.$u.vuex('vuex_deviceMode',cid);
						clearInterval(timmer);
					}
			   });
			 }, 5000);
		});
	},
	
	// 开启监听推送 
	pushListener(that) {
		const token = that.vuex_token;
		const platform = that.vuex_OSPlat.toLowerCase();
		// 点击推送信息
		plus.push.addEventListener('click', res => {
			// 其实在这里就可以根据你自己的业务去写了
			console.log("====点击推送信息====",res);
			if (token) {
				if (platform == 'android') {
					/* uni.navigateTo({
						url:'/pages/sub-pages/menu/account-detail-print/account-detai-print-record'
					}) */
				} else {
					//  在线
					if (res.aps == null) {
						console.log('苹果------在线');
					} else {
						// 离线
						console.log('苹果------离线');
					}
				}
			} else {
				// 这里跳登录页了
				console.log("token失效,跳转登录页");
			}
		});
		// 接收推送信息  在线
		plus.push.addEventListener('receive', res => {
			console.log("====推送的结果内容====",res);
			const messageTitle = res.title;
			const messageContent = res.content;
			if(!token){
				console.log("没登录不接收通知");
				return;
			};
			if (platform == 'android') {
				/***  
				  安卓监听不到  因为安卓这个格式被封装了，做成了通知栏展示
				  换个格式就行（比如里面多个字段，或换个字段名）
				*/
				/***
				  此格式的透传消息由 unipush 做了特殊处理， 会自动展示通知栏 
				  开发者也可自定义其它格式， 在客户端自己处理
				*/
				/*  "push_message": {
				    "transmission": "{
				      title:\"标题\",
				      content:\"内容\",
				      payload:\"自定义数据\"
				    }"
				  }, */
				// Hbulidx 版本大于 ## 3.4.18，安卓不再通知栏展示, 需要自行创建通知
				/* plus.push.createMessage(messageContent, res.payload, {
					title: messageTitle
				}); */
				// 或者在 onlaunch 写入
				// plus.push.setAutoNotification(true);
			} else {
				const type = res.type
				//【APP离线】收到消息，但没有提醒（发生在一次收到多个离线消息时，只有一个有提醒，但其他的没有提醒）  
				//【APP在线】收到消息，不会触发系统消息,需要创建本地消息，但不能重复创建
				// 必须加msg.type验证去除死循环        
				if (res.aps == null && type == "receive") {
					//创建本地消息,发送的本地消息也会被receive方法接收到，但没有type属性，且aps是null  
					plus.push.createMessage(messageContent, res.payload, {
						title: messageTitle
					});
				}
			}
		});
	}
}